﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using HP.Cachalote.DataModels;
using HP.Cachalote.Repositories;

namespace HP.Cachalote.Services.Interfaces
{
    public interface ITodoLabelService : IService<TodoLabel>
    {
        /// <summary>
        /// Insert new TodoLabel based on the OrderIndex. Also will reset the others' OrderIndex.
        /// </summary>
        /// <param name="todoLabel">The new inserted TodoLabel with new OrderIndex.</param>
        /// <returns>The id of the new added TodoLabel.</returns>
        object Insert(TodoLabel todoLabel);

        /// <summary>
        /// Get a label list with Hierarchical struct. It means load entire tree at one time.
        /// </summary>
        /// <returns>The label list.</returns>
        //IList<TodoLabel> GetHierarchicalLabelList();
    }
}
